package kv

const (
	pathBackends                                = "/backends/"
	pathBackendCircuitBreakerExpression         = "/circuitbreaker/expression"
	pathBackendHealthCheckScheme                = "/healthcheck/scheme"
	pathBackendHealthCheckPath                  = "/healthcheck/path"
	pathBackendHealthCheckPort                  = "/healthcheck/port"
	pathBackendHealthCheckInterval              = "/healthcheck/interval"
	pathBackendHealthCheckTimeout               = "/healthcheck/timeout"
	pathBackendHealthCheckHostname              = "/healthcheck/hostname"
	pathBackendHealthCheckHeaders               = "/healthcheck/headers/"
	pathBackendLoadBalancerMethod               = "/loadbalancer/method"
	pathBackendLoadBalancerStickiness           = "/loadbalancer/stickiness"
	pathBackendLoadBalancerStickinessCookieName = "/loadbalancer/stickiness/cookiename"
	pathBackendMaxConnAmount                    = "/maxconn/amount"
	pathBackendMaxConnExtractorFunc             = "/maxconn/extractorfunc"
	pathBackendServers                          = "/servers/"
	pathBackendServerURL                        = "/url"
	pathBackendServerWeight                     = "/weight"
	pathBackendBuffering                        = "/buffering/"
	pathBackendBufferingMaxResponseBodyBytes    = pathBackendBuffering + "maxresponsebodybytes"
	pathBackendBufferingMemResponseBodyBytes    = pathBackendBuffering + "memresponsebodybytes"
	pathBackendBufferingMaxRequestBodyBytes     = pathBackendBuffering + "maxrequestbodybytes"
	pathBackendBufferingMemRequestBodyBytes     = pathBackendBuffering + "memrequestbodybytes"
	pathBackendBufferingRetryExpression         = pathBackendBuffering + "retryexpression"

	pathFrontends                                         = "/frontends/"
	pathFrontendBackend                                   = "/backend"
	pathFrontendPriority                                  = "/priority"
	pathFrontendPassHostHeader                            = "/passhostheader"
	pathFrontendPassTLSClientCert                         = "/passTLSClientCert"
	pathFrontendPassTLSClientCertPem                      = pathFrontendPassTLSClientCert + "/pem"
	pathFrontendPassTLSClientCertInfos                    = pathFrontendPassTLSClientCert + "/infos"
	pathFrontendPassTLSClientCertInfosNotAfter            = pathFrontendPassTLSClientCertInfos + "/notAfter"
	pathFrontendPassTLSClientCertInfosNotBefore           = pathFrontendPassTLSClientCertInfos + "/notBefore"
	pathFrontendPassTLSClientCertInfosSans                = pathFrontendPassTLSClientCertInfos + "/sans"
	pathFrontendPassTLSClientCertInfosSubject             = pathFrontendPassTLSClientCertInfos + "/subject"
	pathFrontendPassTLSClientCertInfosSubjectCommonName   = pathFrontendPassTLSClientCertInfosSubject + "/commonName"
	pathFrontendPassTLSClientCertInfosSubjectCountry      = pathFrontendPassTLSClientCertInfosSubject + "/country"
	pathFrontendPassTLSClientCertInfosSubjectLocality     = pathFrontendPassTLSClientCertInfosSubject + "/locality"
	pathFrontendPassTLSClientCertInfosSubjectOrganization = pathFrontendPassTLSClientCertInfosSubject + "/organization"
	pathFrontendPassTLSClientCertInfosSubjectProvince     = pathFrontendPassTLSClientCertInfosSubject + "/province"
	pathFrontendPassTLSClientCertInfosSubjectSerialNumber = pathFrontendPassTLSClientCertInfosSubject + "/serialNumber"
	pathFrontendPassTLSCert                               = "/passtlscert"
	pathFrontendWhiteListSourceRange                      = "/whitelist/sourcerange"
	pathFrontendWhiteListIPStrategy                       = "/whitelist/ipstrategy"
	pathFrontendWhiteListIPStrategyDepth                  = pathFrontendWhiteListIPStrategy + "/depth"
	pathFrontendWhiteListIPStrategyExcludedIPs            = pathFrontendWhiteListIPStrategy + "/excludedips"

	pathFrontendAuth                             = "/auth/"
	pathFrontendAuthBasic                        = pathFrontendAuth + "basic/"
	pathFrontendAuthBasicRemoveHeader            = pathFrontendAuthBasic + "removeheader"
	pathFrontendAuthBasicUsers                   = pathFrontendAuthBasic + "users"
	pathFrontendAuthBasicUsersFile               = pathFrontendAuthBasic + "usersfile"
	pathFrontendAuthDigest                       = pathFrontendAuth + "digest/"
	pathFrontendAuthDigestRemoveHeader           = pathFrontendAuthDigest + "removeheader"
	pathFrontendAuthDigestUsers                  = pathFrontendAuthDigest + "users"
	pathFrontendAuthDigestUsersFile              = pathFrontendAuthDigest + "usersfile"
	pathFrontendAuthForward                      = pathFrontendAuth + "forward/"
	pathFrontendAuthForwardAddress               = pathFrontendAuthForward + "address"
	pathFrontendAuthForwardTLS                   = pathFrontendAuthForward + "tls/"
	pathFrontendAuthForwardTLSCa                 = pathFrontendAuthForwardTLS + "ca"
	pathFrontendAuthForwardTLSCaOptional         = pathFrontendAuthForwardTLS + "caoptional"
	pathFrontendAuthForwardTLSCert               = pathFrontendAuthForwardTLS + "cert"
	pathFrontendAuthForwardTLSInsecureSkipVerify = pathFrontendAuthForwardTLS + "insecureskipverify"
	pathFrontendAuthForwardTLSKey                = pathFrontendAuthForwardTLS + "key"
	pathFrontendAuthForwardTrustForwardHeader    = pathFrontendAuthForward + "trustforwardheader"
	pathFrontendAuthHeaderField                  = pathFrontendAuth + "headerfield"

	pathFrontendEntryPoints            = "/entrypoints"
	pathFrontendRedirectEntryPoint     = "/redirect/entrypoint"
	pathFrontendRedirectRegex          = "/redirect/regex"
	pathFrontendRedirectReplacement    = "/redirect/replacement"
	pathFrontendRedirectPermanent      = "/redirect/permanent"
	pathFrontendErrorPages             = "/errors/"
	pathFrontendErrorPagesBackend      = "/backend"
	pathFrontendErrorPagesQuery        = "/query"
	pathFrontendErrorPagesStatus       = "/status"
	pathFrontendRateLimit              = "/ratelimit/"
	pathFrontendRateLimitRateSet       = pathFrontendRateLimit + "rateset/"
	pathFrontendRateLimitExtractorFunc = pathFrontendRateLimit + "extractorfunc"
	pathFrontendRateLimitPeriod        = "/period"
	pathFrontendRateLimitAverage       = "/average"
	pathFrontendRateLimitBurst         = "/burst"

	pathFrontendCustomRequestHeaders    = "/headers/customrequestheaders/"
	pathFrontendCustomResponseHeaders   = "/headers/customresponseheaders/"
	pathFrontendAllowedHosts            = "/headers/allowedhosts"
	pathFrontendHostsProxyHeaders       = "/headers/hostsproxyheaders"
	pathFrontendSSLForceHost            = "/headers/sslforcehost"
	pathFrontendSSLRedirect             = "/headers/sslredirect"
	pathFrontendSSLTemporaryRedirect    = "/headers/ssltemporaryredirect"
	pathFrontendSSLHost                 = "/headers/sslhost"
	pathFrontendSSLProxyHeaders         = "/headers/sslproxyheaders/"
	pathFrontendSTSSeconds              = "/headers/stsseconds"
	pathFrontendSTSIncludeSubdomains    = "/headers/stsincludesubdomains"
	pathFrontendSTSPreload              = "/headers/stspreload"
	pathFrontendForceSTSHeader          = "/headers/forcestsheader"
	pathFrontendFrameDeny               = "/headers/framedeny"
	pathFrontendCustomFrameOptionsValue = "/headers/customframeoptionsvalue"
	pathFrontendContentTypeNosniff      = "/headers/contenttypenosniff"
	pathFrontendBrowserXSSFilter        = "/headers/browserxssfilter"
	pathFrontendCustomBrowserXSSValue   = "/headers/custombrowserxssvalue"
	pathFrontendContentSecurityPolicy   = "/headers/contentsecuritypolicy"
	pathFrontendPublicKey               = "/headers/publickey"
	pathFrontendReferrerPolicy          = "/headers/referrerpolicy"
	pathFrontendIsDevelopment           = "/headers/isdevelopment"

	pathFrontendRoutes = "/routes/"
	pathFrontendRule   = "/rule"

	pathTLS            = "/tls/"
	pathTLSEntryPoints = "/entrypoints"
	pathTLSCertFile    = "/certificate/certfile"
	pathTLSKeyFile     = "/certificate/keyfile"

	pathTags      = "/tags"
	pathAlias     = "/alias"
	pathSeparator = "/"
)
